import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

function setItem(name, item) {
  localStorage.setItem(name, JSON.stringify(item))
}
function getItem(name) {
  return JSON.parse(localStorage.getItem(name) || '[]')
}

export default {
  namespaced: true,
  state: {
    order: getItem('order'),
    detail:getItem('detail'),
    // time: getItem('time')
    // pri
  },
  getters: {
    // getTotalGoodsCount(state) {
    //   var total = 0
    //   state.cart.forEach(item => {
    //     total += item.count
    //   })
    //   return total
    // },
    // getTotalPrice(state) {
    //   var totalPrice = 0
    //   state.cart.forEach(item => {
    //     if(item.selected){
    //       totalPrice += item.count * item.price
    //     }
    //   })
    //   return totalPrice
    // },
    // getTotalSelected(state) {
    //   var totalSelected = 0
    //   state.cart.forEach(item => {
    //     if(item.selected){
    //       totalSelected += item.count
    //     }
    //   })
    //   return totalSelected
    // },
    // getSelectedList(state) {
    //   var selectedList = []
    //   state.cart.forEach(item => {
    //     if(item.selected){
    //       selectedList.push(item)
    //     }
    //   })
    //   return selectedList
    // }
  },
  mutations: {
    addOrder(state, ordersinfo) {
      state.order.push(ordersinfo)
      // state.detail.push(goodsinfo.detail)
      // console.log(state.order)
      setItem('order', state.order)
      // setItem('detail', state.detail)
    },
    delOrder(state, index) {
      state.order.splice(index, 1)
      state.detail.splice(index, 1)
      setItem('order', state.order)
      setItem('detail', state.detail)
    }
    // countChanged(state, param){
    //   state.cart.some(item => {
    //     if(item.id === param.id) {
    //       item.count = parseInt( param.newCount )
    //       return true
    //     }
    //   })
    //   setItem('cart', state.cart)
    // }
  }
}
